package com.github.zhp.web;

import com.github.zhp.web.route.RouteRegister;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Vertx;
import io.vertx.core.http.HttpServer;

public class WebApp extends AbstractVerticle {
    public static void main(String[] args) {
        WebApp verticle = new WebApp();
        Vertx vertx = Vertx.vertx();
        // 部署verticle，这里会调用start方法
        vertx.deployVerticle(verticle);
    }

    @Override
    public void start() throws Exception {
        // 在这里可以通过this.vertx获取到当前的Vertx
        Vertx vertx = this.vertx;
        // 下面可以实现helloworld中相同的功能
        // 创建一个HttpServer
        HttpServer server = vertx.createHttpServer();
        // 创建路由对象
//        Router router = Router.router(vertx);
        RouteRegister router = new RouteRegister(vertx);
        router.init();
        // 把请求交给路由处理--------------------(1)
        server.requestHandler(router);
        server.listen(8889);
    }

    @Override
    public void stop() throws Exception {
        super.stop();
    }
}
